package web

import (
	"ksd-social-api/commons/base/controller"
	"ksd-social-api/modules/note/model/context"
)

type AdminNoteCategoryController struct {
	controller.BaseController
}

func (web *AdminNoteCategoryController) FindCategoriesAll() {
	// 1: 定义一个接受分页信息的上下文
	categorySearchContext := context.CategorySearchContext{}
	// 2: 开始绑定参数
	web.BindJSON(&categorySearchContext)
	categories, err := adminNoteCategoryService.FindCategoriesAll(categorySearchContext.Status, categorySearchContext.ChannelId, web.GetSystemId())
	if err != nil {
		web.FailCodeMsg(controller.FAIL_CODE, "查询下载分类失败！")
	}
	web.Ok(categories)
}

/**
 * @author feige
 * @date 2023-10-10
 * @version 1.0
 * @desc  根据id删除
 */
func (web *AdminNoteCategoryController) DelById() {
	id, _ := web.ParseParamUint64("id")
	web.Ok(adminNoteCategoryService.DelById(id, web.GetSystemId()))
}

/*
*
修改状态
*/
func (web *AdminNoteCategoryController) UpdateFieldById() {
	// 1: 定义一个接受分页信息的上下文
	noteUpdateContext := context.NoteUpdateContext{}
	// 2: 开始绑定参数
	web.BindJSON(&noteUpdateContext)
	noteUpdateContext.SystemId = web.GetSystemId()
	web.Ok(adminNoteCategoryService.UpdateFieldById(noteUpdateContext))
}

/*
*
保存分类
*/
func (web *AdminNoteCategoryController) SaveUpdateNoteCategory() {
	// 1: 定义一个接受分页信息的上下文
	noteCategoryContext := context.NoteCategoryContext{}
	// 2: 开始绑定参数
	web.BindJSON(&noteCategoryContext)
	noteCategoryContext.SystemId = web.GetSystemId()
	noteCategoryContext.SystemName = web.GetSystemName()
	web.Ok(adminNoteCategoryService.SaveUpdateNoteCategory(noteCategoryContext))
}

/*
*
复制
*/
func (web *AdminNoteCategoryController) CopyData() {
	id, _ := web.ParseParamUint64("id")
	web.Ok(adminNoteCategoryService.CopyData(id, web.GetSystemId()))
}
